#ifndef f_rms_capture_lib_types_h_
#define f_rms_capture_lib_types_h_

#include <windows.h>
#include "../../Common/cTypes.h"

//--------------
typedef struct tagCAPLIBCREATESTRUCT
{
	int w, h;
	int nFPS;

	// specify capture driver ID
	// use capGetDriverDescription to enumerate capture drivers
	// The index can range from 0 through 9. 
	const TCHAR *szDriverName;

#ifndef _LOGRUS_
/*
	//---------------------------
	// this fields will setup by capture driver
	int nDeviceHasAudio;
	int nDeviceHasVideo;

	int nHasAudio;
	int nHasVideo;
*/
#endif

	void*	pParent;
	int nID;

#ifdef _VC10EA_
	short scalePreview;
#endif //def _VC10EA_

	CRITICAL_SECTION CS_VIDEO_ENCODING;
	CRITICAL_SECTION CS_AUDIO_ENCODING;

} CAPLIBCREATESTRUCT;


#ifdef _LOGRUS_
//	LOGRUS
	typedef int (_cdecl * CAP_PROCESS) (void* , int);
#else
//	RMS
 #ifndef _VC10EA_
	typedef int (_cdecl * CAP_PROCESS) (void* , int, int);
 #else //ndef _VC10EA_
	typedef void* CAP_PROCESS;
 #endif //ndef _VC10EA_
#endif


#endif